package com.topsec.manager.dao;

import com.topsec.manager.controller.req.*;
import com.topsec.manager.entity.*;

import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;

import java.util.List;

/**
 * @author zhaoys
 * @date 2017年7月22日 下午3:32:55
 */
//@Mapper("releaseMapper")
@Mapper
public interface ReleaseMapper {
	/**
	 * 跟新工具跟踪任务状态
	 * @param url
	 */
	void updateStatus(@Param("url") String url);
	/**
	 * 根据url查询工具任务列表
	 * @param url
	 * @return
	 */
	List<FindTaskBo> findTaskByurl(@Param("url") String url);
//	/**
//	 * 查询到期开始、结束的数据
//	 * @param time
//	 * @return
//	 */
//	List<IpMoniBo> findCmByTime(String time);

    /**
     * 根据版本id查询版本
     *
     * @return 版本信息
     */
    List<ToolBo> findToolByid(@Param("idList") List<ToolBo> idList);

    /**
     * 根据版本id查询版本
     *
     * @return 版本信息
     */
    List<VersionVo> findVersionByid(@Param("idList") List<VersionVo> idList);

    /**
     * 记录日志
     *
     * @param log
     */
    /**
     * /** 记录日志
     *
     * @param log
     */
    void saveLogger(SystemLogger log);

    /**
     * 判断工具是否存在
     *
     * @param to
     * @return
     */
    List<ToolReq> checkTools(ToolReq to);

    /**
     * 查询工具
     */
    List<VersionVo> findversion(VersionReq v);

    /**
     * 查询工具
     */
    List<ToolBo> findtool();

    /**
     * 查询工具
     */
    List<ToolBo> findtool1();

    /**
     * 添加版本
     */
    List<SslCertBean> getSslCertData(String s);

    /**
     * 查询 cHello 的数据
     */
    List<CHelloBean> getChelloData(String s);

    /**
     * 查询httpxy的数据
     */
    List<HttpXyBean> getHttpXyData(String s);

    /**
     * 条件查询版本
     *
     * @param u
     */
    List<VersionReq> findVersion(VersionReq u);

    /**
     * 添加版本
     *
     * @param u
     */
    void saveTversion(VersionReq u);

    /**
     * 更新版本样本路径
     *
     * @param u
     */
    void upVersion(VersionReq u);

    /**
     * 添加报警信息
     *
     * @param alarmbo
     */
    void savealarm(AlarmBo alarmbo);

    /**
     * 查询
     *
     * @return
     */
    List<Sys_Threshold> findmsg();

    /**
     * 保持设备信息
     *
     * @param deviceInfo
     */
    void saveDeviceInfo(Sys_RunState deviceInfo);

    /**
     * 保存工具
     *
     * @param t
     */
    void saveTool(ToolReq t);
    /**
     * 更新疑似工具的图标路径
     * @param t
     */
    void updatToolIcoshow(ToolReq t);

    /**
     * 更新工具
     *
     * @param t
     */
    void updatTool(VersionReq v);

    /**
     * 查询有效资源
     *
     * @param c
     * @return
     */
    List<Ctresource> queryCtresource(Ctresource c);

    /**
     * 保存有效资源
     *
     * @param c
     */
    void saveCtresource(Ctresource c);

    /**
     * 保存工具测试结果
     *
     * @param t
     */
    void saveToolTest(ToolTestBean t);

    /**
     * 用于保存V网返回的版本穿透测试结果到本地库
     *
     * @param ct
     */
    void saveVersionTest(CTCSVersionReq ct);

    /**
     * 信工所更新Dns任务状态
     *
     * @param dnsTaskReq
     */
    int upXinDnsTaskStutas(DnsAndIp_TaskReq dnsTaskReq);


    /**
     * 天元特通更新Dns任务转改
     *
     * @param dnsTaskReq
     */
    int upTiannDnsTaskStutas(DnsAndIp_TaskReq dnsTaskReq);


    /**
     * 根据 id 查询dns对象
     *
     * @param id
     * @return
     */
    Task_DnsVo findDnsById(long id);
}
